home *** CD-ROM | disk | FTP | other *** search
/ Chip 2007 January, February, March & April / Chip-Cover-CD-2007-02.iso / Pakiet multimedia / Animacje, filmy i prezentacje / Edytory i konwertery filmow / MediaCoder 0.5.1 pre12 / MediaCoder-0.5.1-pre12.exe / htdocs / extensions / ktvmaker / main.js < prev   
Text File  |  2006-09-10  |  3KB  |  73 lines

  1. /*************************************************************************
  2. * MediaCoder extension - MPEG Maker
  3. * Distributed under GPL license
  4. * Copyright (c) 2005-06 Stanley Huang <reachme@citiz.net>
  5. * All rights reserved.
  6. *************************************************************************/
  7.  
  8. function ApplyParams()
  9. {
  10.     var doc = NewXML("MediaCoderPref");
  11.     if (!doc) {
  12.         alert("Error creating config XML");
  13.         return;
  14.     }
  15.  
  16.     // container settings
  17.     var vidfmt = document.getElementById("vidfmt").value;
  18.     AddPrefNode(doc, "overall.video.muxer", "None");
  19.     AddPrefNode(doc, "overall.video.container", vidfmt);
  20.     
  21.     // video settings    
  22.     AddPrefNode(doc, "overall.video.encoder", "FFMPEG");
  23.     AddPrefNode(doc, "overall.video.format", vidfmt);
  24.     AddPrefNode(doc, "overall.video.bitrate", document.getElementById("vb").value);
  25.     AddPrefNode(doc, "videofilter.frame.enabled", "true");
  26.     AddPrefNode(doc, "videofilter.frame.nofpsinc", "false");
  27.     var fps = document.getElementById("fps").value.split("/");
  28.     if (fps.length < 2) {
  29.         AddPrefNode(doc, "videofilter.frame.fps", fps[0]);
  30.         AddPrefNode(doc, "videofilter.frame.fpsScale", "1");
  31.     } else {
  32.         AddPrefNode(doc, "videofilter.frame.fps", fps[0]);
  33.         AddPrefNode(doc, "videofilter.frame.fpsScale", fps[1]);
  34.     }
  35.     var res = document.getElementById("res").value.split("x");
  36.     AddPrefNode(doc, "videofilter.scale.enabled", (res[0] != "0"));
  37.     AddPrefNode(doc, "videofilter.scale.width", res[0]);
  38.     AddPrefNode(doc, "videofilter.scale.height", res[1]);
  39.     
  40.     // audio settings
  41.     var audfmt = document.getElementById("audfmt").value;
  42.     switch (audfmt) {
  43.     case "No Audio":
  44.         AddPrefNode(doc, "overall.audio.encoder", audfmt);
  45.         break;
  46.     default:
  47.         AddPrefNode(doc, "overall.audio.encoder", "ffmpeg");
  48.         AddPrefNode(doc, "audioenc.ffmpeg.codec", audfmt);
  49.         AddPrefNode(doc, "audioenc.ffmpeg.bitrate", document.getElementById("ab").value);
  50.         AddPrefNode(doc, "audioenc.ffmpeg.streams", document.getElementById("streams").value);
  51.         break;
  52.     }
  53.     AddPrefNode(doc, "audiofilter.resample.samplerate", document.getElementById("srate").srate);
  54.     AddPrefNode(doc, "overall.audio.source", "ffmpeg");
  55.     if (document.getElementById("makektv")) {
  56.         AddPrefNode(doc, "overall.audio.karaoke", "true");
  57.         AddPrefNode(doc, "overall.decoding.aid", "1");
  58.     } else {
  59.         AddPrefNode(doc, "overall.audio.karaoke", "false");
  60.         AddPrefNode(doc, "overall.decoding.aid", "0");
  61.     }
  62.  
  63.     // post settings to MediaCoder
  64.     PostPrefXML(doc);
  65. }
  66.  
  67. function Unload()
  68. {
  69.     // stop playback on window close
  70.     SendCommand("stop_play");
  71. }
  72.  
  73.